#ifndef BUILDING_TYPE_H
#define BUILDING_TYPE_H

#include <string>
#include <vector>

#include "Resource.h"

using namespace std;

class Game;
class UnitType;

class BuildingType
{
	string name;
	
	vector <Resource> required_resources;
	vector <UnitType *> producer_of;		// Unit types this building can produce
	int initial_health;
	
public:
	int id;

	BuildingType();
	BuildingType(int id, string name, int initial_health, vector <Resource> required_resources);
	
	static void load_from_file(string file_name);
	
	void produces(UnitType *ut);		// Adds unit type this building type can produce
};

#endif
